Skip to content

feat: Magic Widget extension#979

Merged
joshuascan merged 79 commits intomasterfrom
react-ext
Jan 29, 2026
Merged

feat: Magic Widget extension#979
joshuascan merged 79 commits intomasterfrom
react-ext

Conversation

@joshuascan
Copy link
Member

@joshuascan joshuascan commented Dec 11, 2025

📦 Pull Request

This pull request adds a Magic Widget extension that provides a complete React-based authentication UI component supporting email OTP, OAuth social login, and third-party wallet connections (MetaMask, WalletConnect, Coinbase, Phantom, Rabby) using SIWE (Sign-In with Ethereum).

✅ Fixed Issues

  • New @magic-ext/magic-widget package with React components for authentication flows

🚨 Test instructions

[Describe any additional context required to test the PR/feature/bug fix.]

⚠️ Don't forget to add a semver label!

Please 🚨 ONLY ADD ONE 🚨 of the following labels, failing to do so may lead to adverse versioning of your changes when published:

  • patch: Bug Fix?
  • minor: New Feature?
  • major: Breaking Change?
  • skip-release: It's unnecessary to publish this change.

Special Note

Please avoid adding any of the Priority labels as they conflict with the labels above ☝️

📦 Published PR as canary version: Canary Versions

✨ Test out this PR locally via:

npm install @magic-ext/algorand@28.2.0-canary.979.21495160726.0
npm install @magic-ext/aptos@16.2.0-canary.979.21495160726.0
npm install @magic-ext/avalanche@28.2.0-canary.979.21495160726.0
npm install @magic-ext/bitcoin@28.2.0-canary.979.21495160726.0
npm install @magic-ext/conflux@26.2.0-canary.979.21495160726.0
npm install @magic-ext/cosmos@28.2.0-canary.979.21495160726.0
npm install @magic-ext/ed25519@24.2.0-canary.979.21495160726.0
npm install @magic-ext/evm@1.1.0-canary.979.21495160726.0
npm install @magic-ext/farcaster@5.2.0-canary.979.21495160726.0
npm install @magic-ext/flow@28.2.0-canary.979.21495160726.0
npm install @magic-ext/gdkms@16.2.0-canary.979.21495160726.0
npm install @magic-ext/harmony@28.2.0-canary.979.21495160726.0
npm install @magic-ext/hedera@2.1.0-canary.979.21495160726.0
npm install @magic-ext/icon@28.2.0-canary.979.21495160726.0
npm install @magic-ext/kadena@5.2.0-canary.979.21495160726.0
npm install @magic-ext/magic-widget@0.2.0-canary.979.21495160726.0
npm install @magic-ext/near@28.2.0-canary.979.21495160726.0
npm install @magic-ext/oauth2@15.2.0-canary.979.21495160726.0
npm install @magic-ext/oidc@16.2.0-canary.979.21495160726.0
npm install @magic-ext/polkadot@28.2.0-canary.979.21495160726.0
npm install @magic-ext/react-native-bare-oauth@30.2.0-canary.979.21495160726.0
npm install @magic-ext/react-native-expo-oauth@30.2.0-canary.979.21495160726.0
npm install @magic-ext/siwe@3.2.0-canary.979.21495160726.0
npm install @magic-ext/solana@30.2.0-canary.979.21495160726.0
npm install @magic-ext/sui@5.2.0-canary.979.21495160726.0
npm install @magic-ext/taquito@25.2.0-canary.979.21495160726.0
npm install @magic-ext/terra@25.2.0-canary.979.21495160726.0
npm install @magic-ext/tezos@28.2.0-canary.979.21495160726.0
npm install @magic-ext/webauthn@27.2.0-canary.979.21495160726.0
npm install @magic-ext/zilliqa@28.2.0-canary.979.21495160726.0
npm install @magic-sdk/provider@33.3.0-canary.979.21495160726.0
npm install @magic-sdk/types@27.3.0-canary.979.21495160726.0
npm install magic-sdk@33.3.0-canary.979.21495160726.0
# or 
yarn add @magic-ext/algorand@28.2.0-canary.979.21495160726.0
yarn add @magic-ext/aptos@16.2.0-canary.979.21495160726.0
yarn add @magic-ext/avalanche@28.2.0-canary.979.21495160726.0
yarn add @magic-ext/bitcoin@28.2.0-canary.979.21495160726.0
yarn add @magic-ext/conflux@26.2.0-canary.979.21495160726.0
yarn add @magic-ext/cosmos@28.2.0-canary.979.21495160726.0
yarn add @magic-ext/ed25519@24.2.0-canary.979.21495160726.0
yarn add @magic-ext/evm@1.1.0-canary.979.21495160726.0
yarn add @magic-ext/farcaster@5.2.0-canary.979.21495160726.0
yarn add @magic-ext/flow@28.2.0-canary.979.21495160726.0
yarn add @magic-ext/gdkms@16.2.0-canary.979.21495160726.0
yarn add @magic-ext/harmony@28.2.0-canary.979.21495160726.0
yarn add @magic-ext/hedera@2.1.0-canary.979.21495160726.0
yarn add @magic-ext/icon@28.2.0-canary.979.21495160726.0
yarn add @magic-ext/kadena@5.2.0-canary.979.21495160726.0
yarn add @magic-ext/magic-widget@0.2.0-canary.979.21495160726.0
yarn add @magic-ext/near@28.2.0-canary.979.21495160726.0
yarn add @magic-ext/oauth2@15.2.0-canary.979.21495160726.0
yarn add @magic-ext/oidc@16.2.0-canary.979.21495160726.0
yarn add @magic-ext/polkadot@28.2.0-canary.979.21495160726.0
yarn add @magic-ext/react-native-bare-oauth@30.2.0-canary.979.21495160726.0
yarn add @magic-ext/react-native-expo-oauth@30.2.0-canary.979.21495160726.0
yarn add @magic-ext/siwe@3.2.0-canary.979.21495160726.0
yarn add @magic-ext/solana@30.2.0-canary.979.21495160726.0
yarn add @magic-ext/sui@5.2.0-canary.979.21495160726.0
yarn add @magic-ext/taquito@25.2.0-canary.979.21495160726.0
yarn add @magic-ext/terra@25.2.0-canary.979.21495160726.0
yarn add @magic-ext/tezos@28.2.0-canary.979.21495160726.0
yarn add @magic-ext/webauthn@27.2.0-canary.979.21495160726.0
yarn add @magic-ext/zilliqa@28.2.0-canary.979.21495160726.0
yarn add @magic-sdk/provider@33.3.0-canary.979.21495160726.0
yarn add @magic-sdk/types@27.3.0-canary.979.21495160726.0
yarn add magic-sdk@33.3.0-canary.979.21495160726.0

@joshuascan joshuascan added the major Increment the major version when merged label Dec 11, 2025
@joshuascan joshuascan changed the title Magic Widget extension feat: Magic Widget extension Dec 18, 2025
joshuascan and others added 9 commits December 18, 2025 15:02
@Ethella Ethella requested a review from Copilot January 29, 2026 01:30
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request adds a Magic Widget extension that provides a complete React-based authentication UI component supporting email OTP, OAuth social login, and third-party wallet connections (MetaMask, WalletConnect, Coinbase, Phantom, Rabby) using SIWE (Sign-In with Ethereum).

Changes:

  • New @magic-ext/magic-widget package with React components for authentication flows
  • Support for email OTP, OAuth providers, and third-party wallet SIWE authentication
  • Build tooling configured with Rollup, Panda CSS, and TypeScript
  • Integration with wagmi/WalletConnect for wallet connections
  • Comprehensive test coverage for provider modules and utility functions
  • Updated package versions across multiple extensions

Reviewed changes

Copilot reviewed 167 out of 241 changed files in this pull request and generated no comments.

Show a summary per file
File Description
packages/@magic-ext/magic-widget/* New widget extension with React UI, wagmi integration, and styled-system components
packages/@magic-sdk/provider/src/* Added third-party wallet routing, message types, and request handling
packages/@magic-sdk/provider/test/* Added comprehensive test coverage for new functionality
packages/@magic-sdk/types/src/core/message-types.ts Added message types for third-party wallet communication
scripts/utils/esbuild.ts Enhanced build configuration with ESM support and path aliases
packages/@magic-ext/web3modal-ethers5/* Removed entire package and tests
Various package.json files Updated provider dependency versions to ^33.1.0
Files not reviewed (1)
  • packages/@magic-ext/magic-widget/pnpm-lock.yaml: Language not supported

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Ethella
Ethella previously approved these changes Jan 29, 2026
@joshuascan joshuascan added this pull request to the merge queue Jan 29, 2026
Merged via the queue into master with commit aad8143 Jan 29, 2026
5 of 6 checks passed
@joshuascan joshuascan deleted the react-ext branch January 29, 2026 21:53
@Ethella Ethella added the released This issue/pull request has been released. label Jan 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

minor Increment the minor version when merged released This issue/pull request has been released.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants